package com.ruibang.glass.material.service.gjs;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruibang.glass.material.domain.req.ycl.ManagementInventoryReq;
import com.ruibang.glass.material.entity.gj.MaterialGJManagementInventory;
import com.ruibang.glass.material.entity.gjs.MaterialGJSManagementInventory;
import com.ruibang.glass.material.entity.hxp.MaterialHXPManagementInventory;

/**
 * <p>
 * 物料管理入库表 服务类
 * </p>
 *
 * @author mameng
 * @since 2024-04-01
 */
public interface MaterialGJSManagementInventoryService extends IService<MaterialGJSManagementInventory> {
    /**
     * 列表
     * @param managementInventoryReq
     * @return
     */
    IPage<MaterialGJSManagementInventory> getPage(ManagementInventoryReq managementInventoryReq);

    void updateStatusById(MaterialGJSManagementInventory materialManagementInventory);

    String saveMaterialManagementInventory(MaterialGJSManagementInventory materialManagementInventory);

    MaterialGJSManagementInventory getDetail(String id);
    /**
     * 计算库存
     * @param materialManagementInventory
     */
    void updateInHouse(MaterialGJSManagementInventory materialManagementInventory);

    void updateMaterialGJSManagementInventory(MaterialGJSManagementInventory materialManagementInventory);


}
